<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
        <head><title>object Monad in scalaz.control</title>
        <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"></meta><meta content="scaladoc (version 2.6.1-final)" name="generator"></meta><link href="../../style.css" type="text/css" rel="stylesheet"></link><script type="text/javascript" src="../../script.js"></script>
        </head>
        <body onload="init()">
        <table summary="" class="navigation">
        <tr>
          <td class="navigation-links" valign="top">
            <!-- <table><tr></tr></table> -->
          </td>
          <td align="right" valign="top" style="white-space:nowrap;" rowspan="2">
            <div class="doctitle-larger">Scalaz 2.3</div>
          </td>
        </tr>
        <tr><td></td></tr>
      </table><div align="right"><img alt="Workingmouse" src="http://projects.workingmouse.com/public/resources/images/logo_full_transparent.png"></img></div>
        
      <div class="entity">
        <a href="../../scalaz/control$package.html" target="_self">scalaz.control</a>
        <br></br>
        <span class="entity">object  Monad</span>
      </div><hr></hr>
      <div class="source">
        [source: <a href="" class="scalaz/control/Monad"><code>scalaz/control/Monad.scala</code></a>]
      </div><hr></hr>
      <a name="Monad"></a><dl>
      <dt>
        
        <code></code>
        <code>object</code>
        <em>Monad</em>
      </dt>
      <dd><code> extends </code><a href="../../scala/AnyRef.html" target="_self">AnyRef</a></dd>
    </dl>
      


<table summary="" cellpadding="3" class="member">
      <tr><td class="title" colspan="2">Method Summary</td></tr>
      <tr>
      <td class="modifiers" valign="top"> 
        <code>implicit def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#ArrayMnd%28%3D%3EArray%5BA%5D%29" target="_self">ArrayMnd</a></em>
        [<em>A</em>](<em>as</em> : =&gt; <a href="" target="contentFrame" class="scala/Array">scala.Array</a>[<a href="../../scalaz/control/Monad$object.html#ArrayMnd%28%3D%3EArray%5BA%5D%29#A" target="_self">A</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/Array">scala.Array</a>]) : <a href="../../scalaz/control/Monad$object.Mnd.html" target="_self">Mnd</a>[<a href="" target="contentFrame" class="scala/Array">scala.Array</a>, <a href="../../scalaz/control/Monad$object.html#ArrayMnd%28%3D%3EArray%5BA%5D%29#A" target="_self">A</a>]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code>implicit def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#ArrayMonad" target="_self">ArrayMonad</a></em>
         : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/Array">scala.Array</a>]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code>implicit def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#ListMnd%28%3D%3EList%5BA%5D%29" target="_self">ListMnd</a></em>
        [<em>A</em>](<em>as</em> : =&gt; <a href="" target="contentFrame" class="scala/List">scala.List</a>[<a href="../../scalaz/control/Monad$object.html#ListMnd%28%3D%3EList%5BA%5D%29#A" target="_self">A</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/List">scala.List</a>]) : <a href="../../scalaz/control/Monad$object.Mnd.html" target="_self">Mnd</a>[<a href="" target="contentFrame" class="scala/List">scala.List</a>, <a href="../../scalaz/control/Monad$object.html#ListMnd%28%3D%3EList%5BA%5D%29#A" target="_self">A</a>]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code>implicit def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#ListMonad" target="_self">ListMonad</a></em>
         : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/List">scala.List</a>]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code>implicit def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#OptionMnd%28%3D%3EOption%5BA%5D%29" target="_self">OptionMnd</a></em>
        [<em>A</em>](<em>as</em> : =&gt; <a href="" target="contentFrame" class="scala/Option">scala.Option</a>[<a href="../../scalaz/control/Monad$object.html#OptionMnd%28%3D%3EOption%5BA%5D%29#A" target="_self">A</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/Option">scala.Option</a>]) : <a href="../../scalaz/control/Monad$object.Mnd.html" target="_self">Mnd</a>[<a href="" target="contentFrame" class="scala/Option">scala.Option</a>, <a href="../../scalaz/control/Monad$object.html#OptionMnd%28%3D%3EOption%5BA%5D%29#A" target="_self">A</a>]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code>implicit def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#OptionMonad" target="_self">OptionMonad</a></em>
         : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/Option">scala.Option</a>]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code>implicit def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#StreamMnd%28%3D%3EStream%5BA%5D%29" target="_self">StreamMnd</a></em>
        [<em>A</em>](<em>as</em> : =&gt; <a href="" target="contentFrame" class="scala/Stream">scala.Stream</a>[<a href="../../scalaz/control/Monad$object.html#StreamMnd%28%3D%3EStream%5BA%5D%29#A" target="_self">A</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/Stream">scala.Stream</a>]) : <a href="../../scalaz/control/Monad$object.Mnd.html" target="_self">Mnd</a>[<a href="" target="contentFrame" class="scala/Stream">scala.Stream</a>, <a href="../../scalaz/control/Monad$object.html#StreamMnd%28%3D%3EStream%5BA%5D%29#A" target="_self">A</a>]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code>implicit def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#StreamMonad" target="_self">StreamMonad</a></em>
         : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/Stream">scala.Stream</a>]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code> def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29" target="_self">filterM</a></em>
        [<em>A</em>, <em>M</em>, <em>F</em>](<em>f</em> : (<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#A" target="_self">A</a>) =&gt; <a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#M" target="_self">M</a>[<a href="../../scala/Boolean.html" target="_self">Boolean</a>], <em>as</em> : <a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#F" target="_self">F</a>[<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#A" target="_self">A</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#M" target="_self">M</a>], <code>implicit </code><em>fd</em> : <a href="../../scalaz/control/Foldable.html" target="_self">Foldable</a>[<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#F" target="_self">F</a>], <code>implicit </code><em>mp</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#F" target="_self">F</a>]) : <a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#F" target="_self">F</a>[<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#A" target="_self">A</a>]]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code> def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29" target="_self">foldM</a></em>
        [<em>A</em>, <em>B</em>, <em>M</em>, <em>F</em>](<em>f</em> : (<a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#B" target="_self">B</a>, <a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#A" target="_self">A</a>) =&gt; <a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#A" target="_self">A</a>], <em>a</em> : <a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#A" target="_self">A</a>, <em>bs</em> : <a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#F" target="_self">F</a>[<a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#B" target="_self">B</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#M" target="_self">M</a>], <code>implicit </code><em>fd</em> : <a href="../../scalaz/control/Foldable.html" target="_self">Foldable</a>[<a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#F" target="_self">F</a>]) : <a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#A" target="_self">A</a>]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code> def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#guard%28Boolean%29" target="_self">guard</a></em>
        [<em>M</em>](<em>c</em> : <a href="../../scala/Boolean.html" target="_self">Boolean</a>)(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#guard%28Boolean%29#M" target="_self">M</a>]) : <a href="../../scalaz/control/Monad$object.html#guard%28Boolean%29#M" target="_self">M</a>[<a href="../../scala/Unit.html" target="_self">Unit</a>]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code> def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#join%28M%5BM%5BA%5D%5D%29" target="_self">join</a></em>
        [<em>M</em>, <em>A</em>](<em>ma</em> : <a href="../../scalaz/control/Monad$object.html#join%28M%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#join%28M%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#join%28M%5BM%5BA%5D%5D%29#A" target="_self">A</a>]])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="../../scalaz/control/Monad$object.html#join%28M%5BM%5BA%5D%5D%29#M" target="_self">M</a>]) : <a href="../../scalaz/control/Monad$object.html#join%28M%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#join%28M%5BM%5BA%5D%5D%29#A" target="_self">A</a>]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code> def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29" target="_self">mapM</a></em>
        [<em>A</em>, <em>B</em>, <em>M</em>, <em>FD</em>, <em>MP</em>](<em>f</em> : (<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#A" target="_self">A</a>) =&gt; <a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#B" target="_self">B</a>], <em>as</em> : <a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#A" target="_self">A</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#M" target="_self">M</a>], <code>implicit </code><em>fd</em> : <a href="../../scalaz/control/Foldable.html" target="_self">Foldable</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#M" target="_self">M</a>], <code>implicit </code><em>mp</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#MP" target="_self">MP</a>]) : <a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#MP" target="_self">MP</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#B" target="_self">B</a>]]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code> def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29" target="_self">sequence</a></em>
        [<em>A</em>, <em>M</em>, <em>FD</em>, <em>MP</em>](<em>ms</em> : <a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#FD" target="_self">FD</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#A" target="_self">A</a>]])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#M" target="_self">M</a>], <code>implicit </code><em>fd</em> : <a href="../../scalaz/control/Foldable.html" target="_self">Foldable</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#FD" target="_self">FD</a>], <code>implicit </code><em>mp</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#MP" target="_self">MP</a>]) : <a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#MP" target="_self">MP</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#A" target="_self">A</a>]]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code> def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29" target="_self">sum</a></em>
        [<em>F</em>, <em>M</em>, <em>A</em>](<em>as</em> : <a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#F" target="_self">F</a>[<a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#A" target="_self">A</a>]])(<code>implicit </code><em>f</em> : <a href="../../scalaz/control/Foldable.html" target="_self">Foldable</a>[<a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#F" target="_self">F</a>], <code>implicit </code><em>m</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#M" target="_self">M</a>]) : <a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#A" target="_self">A</a>]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code> def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#unless%28Boolean%2CM%5BUnit%5D%29" target="_self">unless</a></em>
        [<em>M</em>](<em>c</em> : <a href="../../scala/Boolean.html" target="_self">Boolean</a>, <em>s</em> : <a href="../../scalaz/control/Monad$object.html#unless%28Boolean%2CM%5BUnit%5D%29#M" target="_self">M</a>[<a href="../../scala/Unit.html" target="_self">Unit</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#unless%28Boolean%2CM%5BUnit%5D%29#M" target="_self">M</a>]) : <a href="../../scalaz/control/Monad$object.html#unless%28Boolean%2CM%5BUnit%5D%29#M" target="_self">M</a>[<a href="../../scala/Unit.html" target="_self">Unit</a>]
        
        
      </td>
    </tr>
<tr>
      <td class="modifiers" valign="top"> 
        <code> def</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.html#when%28Boolean%2CM%5BUnit%5D%29" target="_self">when</a></em>
        [<em>M</em>](<em>c</em> : <a href="../../scala/Boolean.html" target="_self">Boolean</a>, <em>s</em> : <a href="../../scalaz/control/Monad$object.html#when%28Boolean%2CM%5BUnit%5D%29#M" target="_self">M</a>[<a href="../../scala/Unit.html" target="_self">Unit</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#when%28Boolean%2CM%5BUnit%5D%29#M" target="_self">M</a>]) : <a href="../../scalaz/control/Monad$object.html#when%28Boolean%2CM%5BUnit%5D%29#M" target="_self">M</a>[<a href="../../scala/Unit.html" target="_self">Unit</a>]
        
        
      </td>
    </tr>
      </table><table summary="" cellpadding="3" class="inherited">
        <tr><td class="title" colspan="2">
          Methods inherited from <a href="../../scala/AnyRef.html" target="_self">AnyRef</a>
        </td></tr>
        <tr><td class="signature" colspan="2">
          <a href="../../scala/AnyRef.html#getClass%28%29" target="_self">getClass</a>, <a href="../../scala/AnyRef.html#hashCode%28%29" target="_self">hashCode</a>, <a href="../../scala/AnyRef.html#equals%28Any%29" target="_self">equals</a>, <a href="../../scala/AnyRef.html#clone%28%29" target="_self">clone</a>, <a href="../../scala/AnyRef.html#toString%28%29" target="_self">toString</a>, <a href="../../scala/AnyRef.html#notify%28%29" target="_self">notify</a>, <a href="../../scala/AnyRef.html#notifyAll%28%29" target="_self">notifyAll</a>, <a href="../../scala/AnyRef.html#wait%28Long%29" target="_self">wait</a>, <a href="../../scala/AnyRef.html#wait%28Long%2CInt%29" target="_self">wait</a>, <a href="../../scala/AnyRef.html#wait%28%29" target="_self">wait</a>, <a href="../../scala/AnyRef.html#finalize%28%29" target="_self">finalize</a>, <a href="../../scala/AnyRef.html#%3D%3D%28AnyRef%29" target="_self">==</a>, <a href="../../scala/AnyRef.html#%21%3D%28AnyRef%29" target="_self">!=</a>, <a href="../../scala/AnyRef.html#eq%28AnyRef%29" target="_self">eq</a>, <a href="../../scala/AnyRef.html#ne%28AnyRef%29" target="_self">ne</a>, <a href="../../scala/AnyRef.html#synchronized%28T0%29" target="_self">synchronized</a>
        </td></tr>
      </table><table summary="" cellpadding="3" class="inherited">
        <tr><td class="title" colspan="2">
          Methods inherited from <a href="../../scala/Any.html" target="_self">Any</a>
        </td></tr>
        <tr><td class="signature" colspan="2">
          <a href="../../scala/Any.html#%3D%3D%28Any%29" target="_self">==</a>, <a href="../../scala/Any.html#%21%3D%28Any%29" target="_self">!=</a>, <a href="../../scala/Any.html#isInstanceOf" target="_self">isInstanceOf</a>, <a href="../../scala/Any.html#asInstanceOf" target="_self">asInstanceOf</a>
        </td></tr>
      </table>
<table summary="" cellpadding="3" class="member">
      <tr><td class="title" colspan="2">Class Summary</td></tr>
      <tr>
      <td class="modifiers" valign="top"> 
        <code>final class</code>
      </td>
      <td class="signature">
        <em><a href="../../scalaz/control/Monad$object.Mnd.html" target="_self">Mnd</a></em>
        [<em>M</em>, <em>A</em>](<em>ma</em> : =&gt; <a href="../../scalaz/control/Monad$object.Mnd.html#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.Mnd.html#A" target="_self">A</a>], <code>implicit </code><em>mnd</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="../../scalaz/control/Monad$object.Mnd.html#M" target="_self">M</a>])<code> extends </code><a href="../../scala/AnyRef.html" target="_self">AnyRef</a>
        
        
      </td>
    </tr>
      </table>

      


<table summary="" cellpadding="3" class="member-detail">
          <tr><td class="title">Method Details</td></tr>
        </table><div><a name="OptionMonad"></a><dl>
      <dt>
        
        <code>implicit</code>
        <code>def</code>
        <em>OptionMonad</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/Option">scala.Option</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="ListMonad"></a><dl>
      <dt>
        
        <code>implicit</code>
        <code>def</code>
        <em>ListMonad</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/List">scala.List</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="StreamMonad"></a><dl>
      <dt>
        
        <code>implicit</code>
        <code>def</code>
        <em>StreamMonad</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/Stream">scala.Stream</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="ArrayMonad"></a><dl>
      <dt>
        
        <code>implicit</code>
        <code>def</code>
        <em>ArrayMonad</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/Array">scala.Array</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="OptionMnd%28%3D%3EOption%5BA%5D%29"></a><dl>
      <dt>
        
        <code>implicit</code>
        <code>def</code>
        <em>OptionMnd</em>[<em>A</em>](<em>as</em> : =&gt; <a href="" target="contentFrame" class="scala/Option">scala.Option</a>[<a href="../../scalaz/control/Monad$object.html#OptionMnd%28%3D%3EOption%5BA%5D%29#A" target="_self">A</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/Option">scala.Option</a>]) : <a href="../../scalaz/control/Monad$object.Mnd.html" target="_self">Mnd</a>[<a href="" target="contentFrame" class="scala/Option">scala.Option</a>, <a href="../../scalaz/control/Monad$object.html#OptionMnd%28%3D%3EOption%5BA%5D%29#A" target="_self">A</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="ListMnd%28%3D%3EList%5BA%5D%29"></a><dl>
      <dt>
        
        <code>implicit</code>
        <code>def</code>
        <em>ListMnd</em>[<em>A</em>](<em>as</em> : =&gt; <a href="" target="contentFrame" class="scala/List">scala.List</a>[<a href="../../scalaz/control/Monad$object.html#ListMnd%28%3D%3EList%5BA%5D%29#A" target="_self">A</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/List">scala.List</a>]) : <a href="../../scalaz/control/Monad$object.Mnd.html" target="_self">Mnd</a>[<a href="" target="contentFrame" class="scala/List">scala.List</a>, <a href="../../scalaz/control/Monad$object.html#ListMnd%28%3D%3EList%5BA%5D%29#A" target="_self">A</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="StreamMnd%28%3D%3EStream%5BA%5D%29"></a><dl>
      <dt>
        
        <code>implicit</code>
        <code>def</code>
        <em>StreamMnd</em>[<em>A</em>](<em>as</em> : =&gt; <a href="" target="contentFrame" class="scala/Stream">scala.Stream</a>[<a href="../../scalaz/control/Monad$object.html#StreamMnd%28%3D%3EStream%5BA%5D%29#A" target="_self">A</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/Stream">scala.Stream</a>]) : <a href="../../scalaz/control/Monad$object.Mnd.html" target="_self">Mnd</a>[<a href="" target="contentFrame" class="scala/Stream">scala.Stream</a>, <a href="../../scalaz/control/Monad$object.html#StreamMnd%28%3D%3EStream%5BA%5D%29#A" target="_self">A</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="ArrayMnd%28%3D%3EArray%5BA%5D%29"></a><dl>
      <dt>
        
        <code>implicit</code>
        <code>def</code>
        <em>ArrayMnd</em>[<em>A</em>](<em>as</em> : =&gt; <a href="" target="contentFrame" class="scala/Array">scala.Array</a>[<a href="../../scalaz/control/Monad$object.html#ArrayMnd%28%3D%3EArray%5BA%5D%29#A" target="_self">A</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="" target="contentFrame" class="scala/Array">scala.Array</a>]) : <a href="../../scalaz/control/Monad$object.Mnd.html" target="_self">Mnd</a>[<a href="" target="contentFrame" class="scala/Array">scala.Array</a>, <a href="../../scalaz/control/Monad$object.html#ArrayMnd%28%3D%3EArray%5BA%5D%29#A" target="_self">A</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="join%28M%5BM%5BA%5D%5D%29"></a><dl>
      <dt>
        
        <code></code>
        <code>def</code>
        <em>join</em>[<em>M</em>, <em>A</em>](<em>ma</em> : <a href="../../scalaz/control/Monad$object.html#join%28M%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#join%28M%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#join%28M%5BM%5BA%5D%5D%29#A" target="_self">A</a>]])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="../../scalaz/control/Monad$object.html#join%28M%5BM%5BA%5D%5D%29#M" target="_self">M</a>]) : <a href="../../scalaz/control/Monad$object.html#join%28M%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#join%28M%5BM%5BA%5D%5D%29#A" target="_self">A</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="sum%28F%5BM%5BA%5D%5D%29"></a><dl>
      <dt>
        
        <code></code>
        <code>def</code>
        <em>sum</em>[<em>F</em>, <em>M</em>, <em>A</em>](<em>as</em> : <a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#F" target="_self">F</a>[<a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#A" target="_self">A</a>]])(<code>implicit </code><em>f</em> : <a href="../../scalaz/control/Foldable.html" target="_self">Foldable</a>[<a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#F" target="_self">F</a>], <code>implicit </code><em>m</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#M" target="_self">M</a>]) : <a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#sum%28F%5BM%5BA%5D%5D%29#A" target="_self">A</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29"></a><dl>
      <dt>
        
        <code></code>
        <code>def</code>
        <em>mapM</em>[<em>A</em>, <em>B</em>, <em>M</em>, <em>FD</em>, <em>MP</em>](<em>f</em> : (<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#A" target="_self">A</a>) =&gt; <a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#B" target="_self">B</a>], <em>as</em> : <a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#A" target="_self">A</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#M" target="_self">M</a>], <code>implicit </code><em>fd</em> : <a href="../../scalaz/control/Foldable.html" target="_self">Foldable</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#M" target="_self">M</a>], <code>implicit </code><em>mp</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#MP" target="_self">MP</a>]) : <a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#MP" target="_self">MP</a>[<a href="../../scalaz/control/Monad$object.html#mapM%28%28A%29%3D%3EM%5BB%5D%2CM%5BA%5D%29#B" target="_self">B</a>]]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29"></a><dl>
      <dt>
        
        <code></code>
        <code>def</code>
        <em>filterM</em>[<em>A</em>, <em>M</em>, <em>F</em>](<em>f</em> : (<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#A" target="_self">A</a>) =&gt; <a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#M" target="_self">M</a>[<a href="../../scala/Boolean.html" target="_self">Boolean</a>], <em>as</em> : <a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#F" target="_self">F</a>[<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#A" target="_self">A</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#M" target="_self">M</a>], <code>implicit </code><em>fd</em> : <a href="../../scalaz/control/Foldable.html" target="_self">Foldable</a>[<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#F" target="_self">F</a>], <code>implicit </code><em>mp</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#F" target="_self">F</a>]) : <a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#F" target="_self">F</a>[<a href="../../scalaz/control/Monad$object.html#filterM%28%28A%29%3D%3EM%5BBoolean%5D%2CF%5BA%5D%29#A" target="_self">A</a>]]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29"></a><dl>
      <dt>
        
        <code></code>
        <code>def</code>
        <em>foldM</em>[<em>A</em>, <em>B</em>, <em>M</em>, <em>F</em>](<em>f</em> : (<a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#B" target="_self">B</a>, <a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#A" target="_self">A</a>) =&gt; <a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#A" target="_self">A</a>], <em>a</em> : <a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#A" target="_self">A</a>, <em>bs</em> : <a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#F" target="_self">F</a>[<a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#B" target="_self">B</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#M" target="_self">M</a>], <code>implicit </code><em>fd</em> : <a href="../../scalaz/control/Foldable.html" target="_self">Foldable</a>[<a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#F" target="_self">F</a>]) : <a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#foldM%28%28B%2CA%29%3D%3EM%5BA%5D%2CA%2CF%5BB%5D%29#A" target="_self">A</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="guard%28Boolean%29"></a><dl>
      <dt>
        
        <code></code>
        <code>def</code>
        <em>guard</em>[<em>M</em>](<em>c</em> : <a href="../../scala/Boolean.html" target="_self">Boolean</a>)(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#guard%28Boolean%29#M" target="_self">M</a>]) : <a href="../../scalaz/control/Monad$object.html#guard%28Boolean%29#M" target="_self">M</a>[<a href="../../scala/Unit.html" target="_self">Unit</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="when%28Boolean%2CM%5BUnit%5D%29"></a><dl>
      <dt>
        
        <code></code>
        <code>def</code>
        <em>when</em>[<em>M</em>](<em>c</em> : <a href="../../scala/Boolean.html" target="_self">Boolean</a>, <em>s</em> : <a href="../../scalaz/control/Monad$object.html#when%28Boolean%2CM%5BUnit%5D%29#M" target="_self">M</a>[<a href="../../scala/Unit.html" target="_self">Unit</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#when%28Boolean%2CM%5BUnit%5D%29#M" target="_self">M</a>]) : <a href="../../scalaz/control/Monad$object.html#when%28Boolean%2CM%5BUnit%5D%29#M" target="_self">M</a>[<a href="../../scala/Unit.html" target="_self">Unit</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="unless%28Boolean%2CM%5BUnit%5D%29"></a><dl>
      <dt>
        
        <code></code>
        <code>def</code>
        <em>unless</em>[<em>M</em>](<em>c</em> : <a href="../../scala/Boolean.html" target="_self">Boolean</a>, <em>s</em> : <a href="../../scalaz/control/Monad$object.html#unless%28Boolean%2CM%5BUnit%5D%29#M" target="_self">M</a>[<a href="../../scala/Unit.html" target="_self">Unit</a>])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#unless%28Boolean%2CM%5BUnit%5D%29#M" target="_self">M</a>]) : <a href="../../scalaz/control/Monad$object.html#unless%28Boolean%2CM%5BUnit%5D%29#M" target="_self">M</a>[<a href="../../scala/Unit.html" target="_self">Unit</a>]
      </dt>
      <dd></dd>
    </dl><hr></hr>
<a name="sequence%28FD%5BM%5BA%5D%5D%29"></a><dl>
      <dt>
        
        <code></code>
        <code>def</code>
        <em>sequence</em>[<em>A</em>, <em>M</em>, <em>FD</em>, <em>MP</em>](<em>ms</em> : <a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#FD" target="_self">FD</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#A" target="_self">A</a>]])(<code>implicit </code><em>m</em> : <a href="../../scalaz/control/Monad.html" target="_self">Monad</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#M" target="_self">M</a>], <code>implicit </code><em>fd</em> : <a href="../../scalaz/control/Foldable.html" target="_self">Foldable</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#FD" target="_self">FD</a>], <code>implicit </code><em>mp</em> : <a href="../../scalaz/control/MonadPlus.html" target="_self">MonadPlus</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#MP" target="_self">MP</a>]) : <a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#M" target="_self">M</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#MP" target="_self">MP</a>[<a href="../../scalaz/control/Monad$object.html#sequence%28FD%5BM%5BA%5D%5D%29#A" target="_self">A</a>]]
      </dt>
      <dd></dd>
    </dl><hr></hr></div>


    <hr></hr>
        <table summary="" class="navigation">
        <tr>
          <td class="navigation-links" valign="top">
            <!-- <table><tr></tr></table> -->
          </td>
          <td align="right" valign="top" style="white-space:nowrap;" rowspan="2">
            <div class="doctitle-larger">Scalaz 2.3</div>
          </td>
        </tr>
        <tr><td></td></tr>
      </table>
      </body>
      </html>